2016 年度最受欢迎中国开源软件 TOP 20,看看你最爱的软件排第几?
每年的年底我们都会准备今年的一些软件榜单,我们把这个榜单定义为 “热门” 榜单,或者说是最受欢迎的榜单。
我们根据软件在社区里的用户关注度、活跃度、访问量等信息来对“热门”进行量化,从而初选出一个大的列表,然后用户再在这个大的列表里投票选择出最终的结果。
这样的做法就很好吗? 当然并不是最好,但是最可行。因为还有一些很不错的开源软件它本身不怎么在开源中国上活跃,或者我们可能没收录到。总之,热门软件排行榜至少是目前比较可行的方案。
——红薯
2016 年度最受欢迎中国开源软件评选结果已出炉。感谢开源软件作者,开源爱好者以及 OSChina 会员的积极参与。
JFinal
作者:JFinal
项目介绍
JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友:)
主要特点:
MVC架构,设计精巧,使用简单
遵循 COC原则,零配置,无 xml
独创 Db + Record模式,灵活便利
ActiveRecord支持,使数据库开发极致快速
自动加载修改后的 java文件,开发过程中无需重启 web server
AOP支持,拦截器配置灵活,功能强大
Plugin体系结构,扩展性强
多视图支持,支持 FreeMarker、JSP、Velocity
强大的 Validator后端校验功能
功能齐全,拥有 struts2的绝大部分功能
体积小仅 339K,且无第三方依赖
ECharts
作者:百度-ECharts团队
项目介绍
ECharts是一款由百度前端技术部开发的,基于 Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。
提供大量常用的数据可视化图表,底层基于ZRender(一个全新的轻量级canvas类库),创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折线图(区域图)、柱状图(条状图)、散点图(气泡图)、饼图(环形图)、K线图、地图、力导向布局图以及和弦图,同时支持任意维度的堆积和多图表混合展现。
Layui
作者:贤心
项目介绍
Layui 是一款带着浓烈情怀的国产前端UI框架,她追求极简,又不失丰盈的内在,说她是史上最轻量的结晶,似乎并不为过。一切都源自于她对原生态的执着,对前端社区的那些噪杂声音的过滤,以及她本身的精心雕琢。
Druid
作者:阿里巴巴-wenshao
项目介绍
Druid是一个 JDBC连接池、监控组件,它包括三部分:
DruidDriver 代理 Driver,能够提供基于Filter-Chain模式的插件体系。
DruidDataSource 高效可管理的数据库连接池。
SQLParser
Druid可以做什么?
1) 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。
2) 替换DBCP和C3P0。Druid提供了一个高效、功能强大、可扩展性好的数据库连接池。
3) 数据库密码加密。直接把数据库密码写在配置文件中,这是不好的行为,容易导致安全问题。DruidDruiver和DruidDataSource都支持PasswordCallback。
4) SQL执行日志,Druid提供了不同的LogFilter,能够支持Common-Logging、Log4j和JdkLog,你可以按需要选择相应的LogFilter,监控你应用的数据库访问情况。
Vue.js
作者:EvanYou
项目介绍
轻量级 JavaScript 框架 ——Vue.js,是构建 Web 界面的JavaScript 库,提供数据驱动的组件,还有简单灵活的 API,使得MVVM 更简单。
主要特性:
可扩展的数据绑定
将普通的 JS 对象作为 model
简洁明了的 API
组件化UI 构建
配合别的库使用
fastjson
作者:阿里巴巴-wenshao
项目介绍
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
主要特点:
快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)
强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum)
零依赖(没有依赖其它任何类库除了JDK)
Dubbo
作者:阿里巴巴-wenshao
项目介绍
Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。
主要核心部件:
Remoting: 网络通信框架,实现了 sync-over-async 和request-response 消息机制.
RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能
Registry: 服务目录框架用于服务的注册和服务事件发布和订阅
Dubbo工作原理
ThinkPHP
作者:流年
项目介绍
ThinkPHP 是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。
框架在系统层面提供了众多的安全特性,确保网站和产品安全无忧。这些特性包括:
XSS安全防护
表单自动验证
强制数据类型转换
输入数据过滤
表单令牌验证
防SQL注入
图像上传检测
JEECG
作者:jeecg
项目介绍
JEECG是一款基于代码生成器的J2EE快速开发平台,开源界“小普元”超越传统商业企业级开发平台。引领新的开发模式(OnlineCoding模式(在线开发)->代码生成器模式->手工MERGE智能开发),可以帮助解决Java项目60%的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省人力成本,同时又不失灵活性。
具备:
表单配置能力(无需编码)
移动配置能力
工作流配置能力
报表配置能力(支持移动端)
插件开发能力(可插拔)
zTree
作者:zTree
项目介绍
zTree 是利用JQuery 的核心代码,实现一套能完成大部分常用功能的Tree 插件
兼容 IE、FireFox、Chrome 等浏览器
在一个页面内可同时生成多个Tree 实例
支持JSON 数据
支持一次性静态生成和Ajax 异步加载 两种方式
支持多种事件响应及反馈
支持Tree 的节点移动、编辑、删除
支持任意更换皮肤 / 个性化图标(依靠css)
支持极其灵活的checkbox 或radio 选择功能
简单的参数配置实现灵活多变的功能
Mycat
作者:风--
项目介绍
MyCAT 是一个彻底开源的,面向企业应用开发的“大数据库集群” 支持事务、ACID、可以替代Mysql的加强版数据库 ? 一个可以视为“Mysql”集群的企业级数据库,用来替代昂贵的Oracle集群? 一个融合内存缓存技术、Nosql技术、HDFS大数据的新型SQL Server ? 结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品? 一个新颖的数据库中间件产品。
MyCat架构
禅道
作者:易软天创(禅道)- 开源春哥
项目介绍
禅道是第一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。
禅道使用自主开发的zentaophp框架开发,内置了完整的扩展机制(非简单的钩子),用户可以非常方便的对禅道进行彻底的二次开发。禅道还为每一个页面提供了json接口的api,方便其他语言来调用交互。内置多语言支持,多风格支持,搜索功能,统计功能等实用功能。
禅道的主要功能列表:
1. 产品管理:包括产品、需求、计划、发布、路线图等功能。
2. 项目管理:包括项目、任务、团队、build、燃尽图等功能。
3. 质量管理:包括bug、测试用例、测试任务、测试结果等功能。
4. 文档管理:包括产品文档库、项目文档库、自定义文档库等功能。
5. 事务管理:包括todo管理,我的任务、我的Bug、我的需求、我的项目等个人事务管理功能。
6. 组织管理:包括部门、用户、分组、权限等功能。
7. 统计功能:丰富的统计表。
8. 搜索功能:强大的搜索,帮助您找到相应的数据。
9. 灵活的扩展机制,几乎可以对禅道的任何地方进行扩展。
10. 强大的api机制,方便与其他系统集成。
ApacheRocketMQ
作者:阿里巴巴-vintagewang
项目介绍
RocketMQ 是一款分布式、队列模型的消息中间件,具有以下特点:
能够保证严格的消息顺序
提供丰富的消息拉取模式
高效的订阅者水平扩展能力
实时的消息订阅机制
亿级消息堆积能力
Metaq3.0 版本改名,产品名称改为RocketMQ
JFinalWeixin
作者:JFinal
项目介绍
JFinal Weixin 是基于JFinal 的微信公众号极速 SDK,只需参考 Demo 代码即可进行极速开发。自 JFinalWeixin 1.2 版本开始已添加对多公众号支持
JeeSite
作者:thinkgem
项目介绍
JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的 开源Java EE快速开发平台。
内置功能
用户管理:用户是系统操作者,该功能主要完成系统用户配置。
机构管理:配置系统组织机构(公司、部门、小组),树结构展现,可随意调整上下级。
区域管理:系统城市区域模型,如:国家、省市、地市、区县的维护。
菜单管理:配置系统菜单,操作权限,按钮权限标识等。
角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
字典管理:对系统中经常使用的一些较为固定的数据进行维护,如:是否、男女、类别、级别等。
操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
连接池监视:监视当期系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
工作流引擎:实现业务工单流转、在线流程设计器。
WeUI
作者:腾讯-ecguo
项目介绍
WeUI 是由微信官方设计团队专为微信移动 Web 应用设计的UI 库。
WeUI 是一套同微信原生视觉体验一致的基础样式库,为微信 Web 开发量身设计,可以令用户的使用感知更加统一。包含button、cell、dialog、toast、article、icon等各式元素。
sharding-jdbc
作者:当当网-terrymanu
项目介绍
Sharding-JDBC是一个轻量级的关系型数据库中间件,提供分库分表、读写分离和柔性事务等功能。它直接封装JDBC协议,可以理解为增强版的JDBC驱动,旧代码迁移成本几乎为零。它使用客户端直连数据库,以jar包形式提供服务,无proxy代理层,无需额外部署,无其他依赖,DBA也无需改变原有的运维方式。
Sharding-JDBC是当当应用框架ddframe中,从关系型数据库模块dd-rdb中分离出来的数据库水平分片框架,实现透明化数据库分库分表访问。Sharding-JDBC是继dubbox和elastic-job之后,ddframe系列开源的第3个项目。
主要包括以下特点:
可适用于任何基于java的ORM框架,如:JPA, Hibernate, Mybatis,Spring JDBC Template或直接使用JDBC。
可基于任何第三方的数据库连接池,如:DBCP, C3P0, BoneCP, Druid等。
理论上可支持任意实现JDBC规范的数据库。虽然目前仅支持MySQL,但已有支持Oracle,SQLServer等数据库的计划。
分片策略灵活,可支持等号,between,in等多维度分片,也可支持多分片键。
SQL解析功能完善,支持聚合,分组,排序,limit,or等查询,并支持Binding Table以及笛卡尔积表查询。
性能高。单库查询QPS为原生JDBC的99.8%;双库查询QPS比单库增加94%。
Deepin
作者:深度Deepin-cxbii
项目介绍
Deepin,是国内最流行和活跃的 Linux 发行版本。
Deepin是一个致力于为全球用户提供美观易用,安全可靠的Linux发行版。它不仅仅对最优秀的开源产品进行集成和配置,还开发了基于HTML5技术的全新桌面环境、系统设置中心、以及音乐播放器,视频播放器,软件中心等一系列面向日常使用的应用软件。LinuxDeepin非常注重易用的体验和美观的设计,因此对于大多数用户来说,它易用安装和使用,还能够很好的代替Windows系统进行工作与娱乐。
特色应用简介
JeeWx 捷微
作者:jeecg
项目介绍
Jeewx是一款开源、免费的微信管家系统(多触点管理平台)。采用JAVA语言,支持微信公众号、微信企业号、支付宝服务窗、QQ公众号、微博账号等多触点管理。Jeewx实现了微信、支付窗、微信企业号、微博等触点的基础管理功能,便于用户二次开发。
平台特性
1、JEEWX基于快速开发平台jeecg 3.4.4 版本开发,以maven方式构建,采用SpringMvc+Hibernate+Easyui等主流架构技术
2、支持微信公众号、支付窗、微信企业号 等多触点
3、开源免费,jeewx遵循Apache2开源协议
4、完善的用户组织机构,报表,强大的代码生成器,有效的提高开发效率
5、详细的二次开发文档,并不断更新增加相关开发案例提供学习参考
6、触点模块采用微服务架构Jeecg-p3开发,支持插件化开发,可插拔可集成
7、JEEWX不断升级中,后续会陆续集成 QQ公众号、微博账号、微信小程序等触点支持
Nutz
作者:三个字儿
项目介绍
Java应用框架 Nutz是开源的,商用也是完全免费的。
一个 jar 包就包含了Mvc,Ioc,Dao,Aop,不强制依赖第三方 jar。小巧的Lang工具箱和EL表达式引擎,满足各种小需求。内置Json序列化/反序列化, 简洁高效。
Mvc/Ioc 可稳定运行在 android 平台,普通 x86/x64/arm 环境更不在话下。
我们将为获奖(前20名)的开源软件作者/团队颁发奖杯。
以下列表是参与投票获奖的幸运观众,将获得由博文视点提供的技术图书一本:
(奖品从以下 10 种书籍中挑选,由于每种书籍数量有限,随机发放。)
我们希望所做的努力能切实推动中国开源事业的发展,也希望大家能一如既往的支持我们的工作 :)